package com.yonyou.wdt.qimenmodel.qimencloud.api.scenehu3cgwt0tc.request;



import com.yonyou.wdt.qimenmodel.qimencloud.api.scenehu3cgwt0tc.response.WdtPreStockInResponse;
import com.yonyou.wdt.qimenmodel.qimencloud.api.scenehu3cgwt0tc.response.WdtStockinOrderQueryRefundResponse;
import com.yonyou.wdt.qimenmodel.taobao.api.ApiRuleException;
import com.yonyou.wdt.qimenmodel.taobao.api.BaseTaobaoRequest;
import com.yonyou.wdt.qimenmodel.taobao.api.Constants;
import com.yonyou.wdt.qimenmodel.taobao.api.internal.util.RequestCheckUtils;
import com.yonyou.wdt.qimenmodel.taobao.api.internal.util.TaobaoHashMap;
import lombok.Data;

import java.util.Map;

/**
 * TOP API(QimenCloud): wdt.stockin.order.query.refund request
 * 
 * @author top auto create
 * @since 1.0, 2018.01.03
 */
@Data
public class WdtPreStockInQueryRefundRequest extends BaseTaobaoRequest<WdtPreStockInResponse> {
     
     

	/** 
	* 秘钥
	 */
	private String appkey;

	/** 
	* 结束日期
	 */
	private String endTime;

	/** 
	* 页号,默认0，从0页开始。
	 */
	private Long pageNo;

	/** 
	* 分页大小（最大不超过30条，默认返回30条）
	 */
	private Long pageSize;

	/** 
	* 卖家账号
	 */
	private String sid;

	/** 
	* 开始日期
	 */
	private String startTime;

	/** 
	* 入库单状态 10已取消30待审核60待结算80已完成（默认80）
	 */
	private Long status;
	private Long timeType;

	private String shopNo;
	
	private String stockinNo;
	
	private String srcOrderNo;

	private String shopNos;
	private String includeHistory;
	private String stockinPreNo;

	public void setAppkey(String appkey) {
		this.appkey = appkey;
	}

	public String getAppkey() {
		return this.appkey;
	}

	public void setEndTime(String endTime) {
		this.endTime = endTime;
	}

	public String getStockinPreNo() {
		return stockinPreNo;
	}

	public void setStockinPreNo(String stockinPreNo) {
		this.stockinPreNo = stockinPreNo;
	}

	public String getEndTime() {
		return this.endTime;
	}

	public void setPageNo(Long pageNo) {
		this.pageNo = pageNo;
	}

	public Long getPageNo() {
		return this.pageNo;
	}

	public void setPageSize(Long pageSize) {
		this.pageSize = pageSize;
	}

	public Long getPageSize() {
		return this.pageSize;
	}

	public void setSid(String sid) {
		this.sid = sid;
	}

	public String getSid() {
		return this.sid;
	}

	public void setStartTime(String startTime) {
		this.startTime = startTime;
	}

	public String getStartTime() {
		return this.startTime;
	}

	public void setStatus(Long status) {
		this.status = status;
	}

	public Long getStatus() {
		return this.status;
	}

     public String getApiMethodName() {
        return "wdt.stockin.pre.order.query";
     }

     private String topContentType ;

     public String getTopContentType() {
        return topContentType;
     }

     public void setTopContentType(String topContentType) {
         this.topContentType = topContentType;
     }

     private String topResponseType = Constants.RESPONSE_TYPE_QIMEN;

     public String getTopResponseType() {
        return topResponseType;
     }

     public void setTopResponseType(String topResponseType) {
        this.topResponseType = topResponseType;
     }

    private String topApiVersion = "2.0";

     public String getTopApiVersion() {
        return this.topApiVersion;
     }

     public void setTopApiVersion(String topApiVersion) {
        this.topApiVersion = topApiVersion;
     }

     private String topApiFormat ;

     public String getTopApiFormat() {
     	return this.topApiFormat;
     }

     public void setTopApiFormat(String topApiFormat) {
     	this.topApiFormat = topApiFormat;
     }
     
     public Map<String, String> getTextParams() {		
		TaobaoHashMap txtParams = new TaobaoHashMap();
		txtParams.put("appkey", this.appkey);
		txtParams.put("end_time", this.endTime);
		txtParams.put("page_no", this.pageNo);
		txtParams.put("page_size", this.pageSize);
		txtParams.put("sid", this.sid);
		txtParams.put("start_time", this.startTime);
		txtParams.put("status", getStatus());
		txtParams.put("shop_no", getShopNo());
		txtParams.put("stockin_no", this.stockinNo);
		txtParams.put("src_order_no", this.srcOrderNo);
		txtParams.put("time_type", this.timeType);
		txtParams.put("include_history", this.includeHistory);
		txtParams.put("shop_nos", this.shopNos);
		txtParams.put("stockin_pre_no", this.stockinPreNo);
		if(this.udfParams != null) {
			txtParams.putAll(this.udfParams);
		}
		return txtParams;
	}
     
     public Class<WdtPreStockInResponse> getResponseClass() {
		return WdtPreStockInResponse.class;
	}

     public void check() throws ApiRuleException {
		//RequestCheckUtils.checkNotEmpty(endTime, "endTime");
		RequestCheckUtils.checkNotEmpty(sid, "sid");
		//RequestCheckUtils.checkNotEmpty(startTime, "startTime");
     }

	public String getShopNo() {
		return shopNo;
	}

	public void setShopNo(String shopNo) {
		this.shopNo = shopNo;
	}

	public String getStockinNo() {
		return stockinNo;
	}

	public void setStockinNo(String stockinNo) {
		this.stockinNo = stockinNo;
	}

	public String getSrcOrderNo() {
		return srcOrderNo;
	}

	public void setSrcOrderNo(String srcOrderNo) {
		this.srcOrderNo = srcOrderNo;
	}
     


}